1. Field of the Invention
The present invention generally relates to the field of rule based computer systems and, more particularly, to a rule based system for nutrient analysis that uses a natural language interface.
2. Background Description
Many prior art systems, rely on menu selection for food specification. Menu selection is an effective and appropriate input mechanism when the user is unlikely to know or recall the item to be selected. However, in the case of food about to be eaten or food previously eaten, the user will simply know what is to be input, and may be encumbered by the overhead of menu navigation.
Because entries in the U.S. Department of Agriculture (USDA) nutrient database are cryptically and eccentrically described, considerable manual processing is required to extract useful values for consumer use. Other food selection systems and food databases are typically organized for browsing alphabetically or alphabetically within a single category (fruits and vegetables, meats, dairy, etc.), impeding search on complex descriptors. With these systems, users have limited choice in their description of amounts, being restricted to such specifications as grams, ounces and serving.
Many of the prior art systems are inflexible. Nutrient guidelines are from a single source, such as the USDA recommended daily amount (RDA), or a particular diet plan. However, any given user may require that considerations for different nutrients may come from a variety of sources. Some may be based on medical prescription, others on institutional guidelines, such as the American Cancer Society or the American Heart Association and still others on personal preference.
Many prior art systems make only limited and inflexible use of user state in the determination of targets; i.e., prior art systems are not directed to a specific user""s requirements. For instance, many prior art systems do not account for a recent change in a user""s exercise program, individual medical conditions like insulin dose with respect to user blood sugar, dynamic changes in nutrition requirements due to physical conditions like pregnancy, etc.
Previous systems require co-residence of code and data input on the same computer system. This means that an expensive and inconveniently heavy device is necessary to run the application or, alternatively, that there may be a significant delay in the entry of diet information.
It is therefore an object of the invention to provide an easy to use system and method for personalizing dynamic nutritional requirements of a user.
It is another object of the invention to provide an improved natural language user interface for a nutrient analysis system.
It is a further object of the invention to provide an improved nutrient analysis system that integrates nutritional guidelines from diverse sources.
According to the invention, a natural language food analyzer process is implemented in a multimedia computer system. A user of the system describes elements of a meal that she has either eaten or is considering eating. Using appropriate input and output devices, such as a keyboard, mouse, and/or microphone, she informs the system of her choices using either spoken or written natural language, and the system responds with dynamic, personalized, state-sensitive feedback about the nutrient components of her choices in relation to her personal nutritional objectives. Meal elements may also be uploaded from another computer or personal data assistant.
The food analyzer recognizes the individual words in the input stream by invoking an appropriate a word or speech recognizer, depending on whether the input is typed or spoken. The task of the recognizer is to disambiguate and resolve unknown or multiply determined words based on a speech model. The amended (disambiguated and resolved) input is passed to a input parser which decomposes it into canonical representations of quantity and food, using the language model. A fuzzy logic search engine does searches against the food model to locate the specified food and return its nutrient values. The fuzzy logic search engine generates both exact and approximate matches. The resulting food descriptor is passed to a feedback generator which analyzes its components with respect to a user model containing personalized nutritional objectives, and rule-based descriptors of a diet protocol and provides immediate, contextualized feedback to the user based on the input.